package com.xiaoxx.model.dto.chat;

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author :HX
 * @date : 2023/7/20
 */
@Data
@ApiModel(value = "ChatVo对象", description = "聊天")
public class ChatDto implements Serializable {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "问题")
    @NotBlank(message = "问题不能为空")
    private String question;

    @ApiModelProperty(value = "聊天菜单id")
    @NotBlank(message = "聊天菜单不能为空")
    private String chatMenuId;

    @ApiModelProperty(value = "聊天菜单id")
    @JsonIgnore
    private String model;

    @ApiModelProperty(value = "apiKey")
    @JsonIgnore
    private String apiKey;

    @ApiModelProperty(value = "1-启用缓存 2-关闭缓存")
    @JsonIgnore
    private Integer isCache;

    @ApiModelProperty(value = "限流数")
    @JsonIgnore
    private Integer limitNum;

    @ApiModelProperty(value = "0-通义千问 1-通义万相 2-创意字生成")
    @NotNull(message = "类型不能为空")
    private Integer contentType = 0;

    @ApiModelProperty(value = "创意字生成样式 例如：海底世界")
    private String prompt;


    @ApiModelProperty(value = "用户id")
    @JsonIgnore
    private String userId;
}
